
//using namespace  std;
//课时10作业
/*初始化顺序表（顺序表中元素为整型），里边的元素是1,2,3，
然后通过scanf读取一个元素（假如插入的是6），插入到第2个位置，打印输出顺序表，每个元素占3个空格，格式为1  6  2  3，
然后scanf读取一个整型数，是删除的位置（假如输入为1），
然后输出顺序表  6  2  3，
假如输入的位置不合法，输出false字符串。提醒，Language一定要选为C++。*/
//#include <string.h>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#define MAX 10

typedef struct Seque
{
    int *a;
    int index;
    int capacity;
}Seque;

void initSeq(Seque *s)
{
    s->a=(int*)malloc(sizeof(int)*MAX);
    if(s->a== nullptr)
    {
        perror("malloc fail");
    }
    s->index=0;
    s->capacity=MAX;
}

void SePush(Seque *s,int num)
{
    int n=s->index;
    while(n>1)
    {
        s->a[n]=s->a[n-1];
        n--;
    }
    s->a[1]=num;
    s->index++;
}

void SeDel(Seque *s,int index)
{
    int i=0;
    for(i=index-1; i<s->index; i++)
    {
        s->a[i]=s->a[i+1];
    }
    s->index--;
}

void Print(Seque *s)
{
    int i=0;
    while(i<s->index)
    {
        printf("  %d",s->a[i]);
        i++;
    }
    printf("\n");
}


int main() {
    Seque s;
    initSeq(&s);
    s.a[0]=1;
    s.a[1]=2;
    s.a[2]=3;
    s.index=3;
    int num;
    scanf("%d",&num);
    getchar();
    int index;
    scanf("%d",&index);
    SePush(&s,num);
    Print(&s);
    if(index<0 || index>s.index)
    {
        printf("false\n");
        return 0;
    }
    SeDel(&s,index);
    Print(&s);

    free(s.a);
    return 0;
}
